# coding:utf-8
# author:fxh
class Cache():
    def __init__(self,client):
        self.client = client

    def set(self,key,value):
        """
        将需要被缓存存储的数据到键key里面，如果键key已经有值，那么使用新键值去覆盖旧值
        :param key:
        :param value:
        :return:
        """
        self.client.set(key,value)
        return "ok"

    def get(self,key):
        """
        获取存储到键key里面的缓存数据，如果数据不存在返回 None
        :param key:
        :return:
        """
        return self.client.get(key)

    def update(self,key,new_value):
        """
        对键key存储的数据进行获取更新操作，并返回key在被更新之前存储的数据
        如果键key之前并没有存储数据，那么返回None
        :param key:
        :param value:
        :return:
        """
        return self.client.getset(key,new_value)


